一个编程开发者眼中的“前后台系统”
2018-08-14 11:38:08
操作系统因其硬件支持与功能不同,而分为处理操作系统,分时操作系统,通用操作系统,网络操作系统几类。
实时操作系统,因其简单,可靠,响应速度快,大范围应用在嵌入式设备上。
前后台系统属于实时系统中的一个分类,因其只有系统主循环加中断的服务方式而得名,对比带有操作系统的实时系统,前后台系统功能更加简单小巧,直接对应硬件裸机编程的特点,因此大范围的应用在固定电话,对讲机,电磁炉,感应器,军工通信,武器操作等领域。
前后台系统完美的运行在结构简单的硬件平台上,也因为硬件简单而不能运行现代操作系统带来的便利性,包括硬件驱动,设备管理,内存管理,多任务等都没有现成的使用,但有时又需要某些高级特性,则必须靠程序员依据硬件平台的属性自己实现,导致开发周期长,调试手段单一,使开发过程异常缓慢。随着功能需求的提高,硬件性能的大幅提高,价格逐渐下落,使支撑更高级的实时系统变的便宜可行,前后台系统也在逐步退出历史的舞台,被功能更全面,开发过程更快速的ucos,os20\21,linux,vxworks,android等取代。
目前前后台系统仍有较大的应用空间,在此简单介绍其开发流程:
1、分析需求,并挑选硬件,搭建硬件平台;
2、完成相应硬件的驱动;
3、设计主循环,功能实现,注册中断,中断服务的实现;
4、测试,调优。
开过过程虽然描述的相对简单易懂,但实际开发过程相对拥有成熟系统平台的开发而言,开发过程异常繁琐与缓慢,主要原因如下:
1、基本上只能使用c、asm汇编语言开发;
2、中断与主循环间的同步控制,系统运行时序控制;
3、直接操作硬件,没有硬件管理机制导致的系统崩溃;
4、硬件信息不开放,软件设计没有清晰模型,获取帮助途径单一;
5、调试手段单一。
总结:
前后台系统优势与劣势都很明显,在现实中仍存在大范围的应用,值得人们学习了解。另外,虽然前后台系统极其简单,但仍符合冯诺依曼模型,所谓麻雀虽小五脏俱全,了解此系统的运作能够非常有效的帮助人们学习linux/windows/android等现代操作系统的运行过程与核心机制。
原创作者:孙建强 本文编辑:张林林 封面源自网络
本文内容完全基于开发者经验而谈,目的只为进一步加强技术人员的相互交流、学习,若有不同观点、误区,还望积极参与帮助指正。转载请附原文链接,谢谢!